﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.Practices.Unity;
using SISGEZATBZVisual.BusinessEntities;
using SISGEZATBZVisual.Service;

namespace SISGEZATBZVisual.Web.Maestros
{
    public partial class FrmAlumno : System.Web.UI.Page
    {
        [Dependency]
        public IAlumnoService AlumnoService { get; set; }



        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                var accion = Request.QueryString["acc"];
                var id = Request.QueryString["id"];


                if (accion == null)
                {

                    Response.Redirect("Alumnos.aspx");
                }
                else if (accion == "editar")
                {
                    var identificador = Int32.Parse(id);

                    var alumno = AlumnoService.GetAlumnoById(identificador);

                    ddlTipoDocumentoAlumnoPanel.SelectedValue = alumno.TipoDeDocumento;
                    txtNroDocumentoAlumnoPanel.Text = alumno.NroDocumento;
                    txtApellidosAlumnoPanel.Text = alumno.Apellidos;
                    txtNombresAlumnoPanel.Text = alumno.Nombres;
                    ddlGeneroAlumnoPanel.SelectedValue = alumno.Genero;
                    txtFechaNacAlumnoPanel.Text = alumno.FechaNacimiento + "";
                    txtDepartamentoAluPanel.Text = alumno.Departamento;
                    txtProvinciaAluPanel.Text = alumno.Provincia;
                    txtDiscritoAluPanel.Text = alumno.Distrito;
                    txtDomicilioAluPanel.Text = alumno.Domicilio;
                    txtTelefonoAluPanel.Text = alumno.Telefono;


                }

            }
        }

        protected void btnGuardarAlumnoPanel_Click(object sender, EventArgs e)
        {

            var accion = Request.QueryString["acc"];

            var alumnoAGurdar = new Alumno()
            {
                TipoDeDocumento = ddlTipoDocumentoAlumnoPanel.SelectedValue,
                NroDocumento = txtNroDocumentoAlumnoPanel.Text,
                Apellidos = txtApellidosAlumnoPanel.Text,
                Nombres = txtNombresAlumnoPanel.Text,
                Genero = ddlGeneroAlumnoPanel.SelectedValue,
                FechaNacimiento = DateTime.Parse(txtFechaNacAlumnoPanel.Text),
                Departamento = txtDepartamentoAluPanel.Text,
                Provincia = txtProvinciaAluPanel.Text,
                Distrito = txtDiscritoAluPanel.Text,
                Domicilio = txtDomicilioAluPanel.Text,
                Telefono = txtTelefonoAluPanel.Text,
                Estado = true

            };

            if (accion == "nuevo")
            {
                var alumno =
                AlumnoService.GetAlumnoByTipoDocumentoNroDocumento(ddlTipoDocumentoAlumnoPanel.Text,
                txtNroDocumentoAlumnoPanel.Text);

                if (alumno == null)
                {

                    //
                    msjAlertaAlumnoPanel.Text = "";
                    //combo

                    AlumnoService.RegistrarAlumno(alumnoAGurdar);
                    Response.Redirect("Alumnos.aspx");

                }
                else
                {
                    msjAlertaAlumnoPanel.Text = "El alumno ya está registrado";

                }
            }else if (accion == "editar")
            {
                var id = Request.QueryString["id"];
                alumnoAGurdar.Id = Int32.Parse(id);
                AlumnoService.UpdateAlumno(alumnoAGurdar);
                Response.Redirect("Alumnos.aspx");
            }



        }
    }
}